Il Paesaggio archeologico dell’Asia Occidentale Antica

Studio e analisi dei sistemi di indagine remote sensing, morfologia e topografia

Andrea Titolo

Università di Torino

Muoversi nelle slide

  • F tutto schermo
  • → , ↓ , SPACE , N, L , J Slide successiva
  • ← , ↑ , P , H , K Slide precedente
  • Shift + ←/↑/→/↓ Vai alla prima/ultima slide
  • ESC, O Panoramica delle slide
  • M Menu

Introduzione ai GIS - QGIS Avanzato

Introduzione ai GIS - QGIS Avanzato


Continueremo ad approfondire alcuni strumenti avanzati di qgis, andando ad esplorare alcuni algoritmi per analisi quantitative e correzioni di geometrie, affrontando anche la questione della simbologia tramite regole.

  • Calcolare il numero di punti all’interno di un poligono
  • Correggere geometrie non valide
  • Intersezione tra punti e poligoni
  • Simbologia tramite regole


Nel frattempo, aprire QGIS!

Link alle slides:

Una volta caricate dal link, le slide dovrebbero seguire la presentazione in automatico.

QGIS Avanzato

QGIS avanzato – contare i punti nei poligoni

Una delle analisi che può essere utile effettuare è cercare di comprendere quanti siti archeologici si posizionino quali unità geomorfologiche. Le implicazioni di questo tipo di analisi sono molteplici, dalla comprensione dell’età di fondazione di un sito, dalle potenzialità del suo entroterra sulla base delle conoscenze acquisite tramite analisi geomorfologica.

In QGIS esistono due algoritmi che possiamo utilizzare per ottenere il risultato che vogliamo: l’algoritmo “conta i punti nel poligono” e “intersezione”. La differenza tra i due sta principalmente nel risultato finale.

QGIS avanzato - contare i punti nei poligoni

Esploreremo prima “conta i punti nel poligono” e poi procederemo con il secondo. Carichiamo un altro layer dal nostro geopackage. Apriamo il geopackage “carchemish_addon” nel pannello di browser e carichiamo il layer puntuale “btr_sue_all” (doppio click sul layer o tasto destro -> Aggiungi Layer al progetto)

QGIS avanzato – contare i punti nei poligoni

Per accedere all’algoritmo, andiamo su Vettore → Strumenti di Analisi → Conta i punti nel poligono. In alternativa, possiamo cercare lo stesso algoritmo nel pannello degli strumenti di processing.

QGIS avanzato – contare i punti nei poligoni

Nel nuovo pannello che si apre, troviamo una descrizione dell’algoritmo sulla destra e una serie di opzioni da impostare. L’algoritmo prende come input un layer poligonale e un layer puntuale. Scegliamo per il primo il layer “btr_geomorph_sue_sanlaville” e per il secondo “btr_sue_all”. Ci sono altri campi opzionali che possiamo ignorare, ed eventualmente decidere il nome della nuova colonna da creare.

Lasciamo tutte le impostazioni di default e clicchiamo su “Esegui”.

QGIS avanzato – contare i punti nei poligoni

Verrà creato un nuovo layer poligonale temporaneo. Se apriamo la tabella attributi di questo layer possiamo vedere come sia stato aggiunto un campo NUMPOINTS, con il conteggio dei punti presenti all’interno di ogni singola geometria.

QGIS avanzato - intersezione

QGIS avanzato - intersezione

Vediamo adesso il secondo algoritmo di cui abbiamo parlato prima. Per accedervi, cerchiamo negli strumenti di processing “Intersezione” e clicchiamoci due volte per avviarlo. Possiamo usare questo algoritmo con un obiettivo diverso dal precedente: ottenere un layer puntuale in cui per ogni punto è indicato il nome dell’unità geomorfologica su cui quel punto si trova.

QGIS avanzato - intersezione

Nel nuovo pannello troviamo la descrizione dell’algoritmo a destra, molto più semplice del precedente.

Come layer in ingresso selezioniamo “btr_sue_all” e come layer di sovrapposizione “btr_geomorph_sue _sanlaville”. Lasciamo il resto di default e clicchiamo su “Esegui”.

QGIS avanzato - intersezione

QGIS produrrà un layer puntuale temporaneo “intersezione”. Se apriamo la tabella attributi del layer possiamo vedere come siano stati aggiunti ad ogni punto, le informazioni presenti nella tabella attributi del layer geomorfologico, relative alla geometria su cui si trova ogni singolo punto. Questo è molto utile per avere un dato qualitativo invece che quantitativo relativo al rapporto tra siti ed unità geomorfologiche.

QGIS avanzato - intersezione

Ricordiamoci che i layer prodotti finora sono tutti temporanei, e che per renderli permanenti, dovremo salvarli o come shapefile o all’interno del nostro geopackage (o in uno nuovo).

QGIS avanzato - simbologia tramite regole

QGIS avanzato - simbologia tramite regole

Vediamo adesso un concetto avanzato relativo alla simbologia dei layer: la simbologia tramite regole. Se apriamo il pannello di Stile layer del layer btr_sue_all, possiamo vedere come la simbologia sia divisa in differenti “regole” ed etichette, che permettono svariati tipi di visualizzazione.

La simbologia tramite regole è molto potente e permette moltissime personalizzazioni della mappa e gestione avanzata della simbologia in funzione della tabella attributi. Per ottenerla, bisogna lavorare con le espressioni di QGIS.

QGIS avanzato - simbologia tramite regole

Per cominciare, partiamo da un elemento semplice. Selezioniamo il layer “btr_sue_ia_types_area”. Possiamo vedere come questo abbia assegnato un tipo di simbologia definita categorizzata, basata sugli elementi unici di un campo nella tabella attributi (in questo caso, site_type).

QGIS avanzato - simbologia tramite regole

Potremo lavorare direttamente dal pannello di stile del layer, ma per avere una maggiore visione d’insieme, apriamo le proprietà del layer (doppio click sul layer). Una volta nel pannello delle proprietà, andiamo su “Simbologia” e clicchiamo sul menu a tendina in alto, scegliendo tra le opzioni “Tramite regole”.

QGIS avanzato - simbologia tramite regole

La simbologia al momento non cambierà, ma il layout dell’interfaccia si adatterà al tipo di simbologia scelto.

QGIS avanzato - simbologia tramite regole

Cominciamo da zero, in modo che sia più chiaro come lavorare con la simbologia tramite regole. Eliminiamo quindi le regole già presenti. Per farlo, selezioniamole (ctrl/cmd +click o shift per selezionarle tutte) e poi clicchiamo sull’icona a forma di “-”presente in basso a sinistra del pannello delle regole.

QGIS avanzato - simbologia tramite regole

Dobbiamo quindi aggiungere la nostra prima regola. Per farlo, clicchiamo sull’icona a forma di “+” in basso a sinistra.

QGIS avanzato - simbologia tramite regole

Si aprirà un nuovo pannello molto simile a quello della simbologia. In alto abbiamo il campo “Etichetta”. In questo possiamo scrivere l’etichetta della nostra regola, ovvero quello che apparirà nel pannello dei layer e nella legenda della mappa. Sebbene sia modificabile in qualsiasi momento, è bene inserire un’etichetta che sia comprensibile ci ricordi immediatamente che tipo di regola abbiamo impostato.

QGIS avanzato - simbologia tramite regole

Poniamo ad esempio che vogliamo mostrare sulla mappa solamente i siti di tipo “Tell”. Per cominciare, nel campo etichetta scriviamo “Tell”.

Per creare effettivamente la nostra regola, clicchiamo sul simbolo della sommatoria a destra, affianco al pulsante “Prova”.

QGIS avanzato - simbologia tramite regole

Si aprirà un ulteriore pannello, simile al calcolatore di campi che abbiamo già visto. Possiamo lavorarci esattamente come abbiamo già fatto. Il nostro obiettivo è dire a QGIS di mostrarci tutti i siti che abbiano, nel campo site_type, il valore “Tell”. Sappiamo quindi già dove partire: andiamo su campi e valori e clicchiamo due volte su site_type per caricarlo nell’editor. Vogliamo poi avere tutti i siti il cui valore sia uguale a “Tell”.

QGIS avanzato - simbologia tramite regole

Dovremo quindi utilizzare l’operatore “=”, come già fatto in precedenza. Possiamo selezionarlo dalla lista degli operatori, o scriverlo manualmente.

QGIS avanzato - simbologia tramite regole

Torniamo adesso sulla sezione “Campi e valori”, clicchiamo una volta su “site_type” e poi nel pannello di destra clicchiamo su “Tutti i valori univoci” per mostrarci i valori tra cui possiamo scegliere. Come possiamo vedere, abbiamo “tell” e “flat_site” come valori univoci. Clicchiamo due volte su “tell” per aggiungerlo all’editor.

Una volta fatto, clicchiamo su “OK”.

QGIS avanzato - simbologia tramite regole

Possiamo vedere che la nostra regola è apparsa sotto l’etichetta, accanto a “Filtra”. Per controllare di aver scritto correttamente la regola, possiamo cliccare su “Prova”, a sinistra del pulsante di sommatoria utilizzato in precedenza.

QGIS avanzato - simbologia tramite regole

Se clicchiamo su “Prova” vediamo infatti che QGIS ci conferma che la regola funziona senza errori, e ci restituisce il numero degli elementi che corrispondono a questa regola. In parole povere, nel nostro layer ci sono 39 siti di tipo “tell”.

QGIS avanzato - simbologia tramite regole

Una volta definita la regola e quindi la modalità di visualizzazione, possiamo anche modificare il simbolo stesso delle geometrie corrispondenti a questa regola. Ricordiamoci che questa impostazione modificherà solamente le geometrie filtrate tramite questa specifica regola. Se quindi in futuro creeremo una seconda regola, potremo applicare una differente simbologia, creando potenzialmente una mappa molto particolareggiata.

QGIS avanzato - simbologia tramite regole

Per modificare il simbolo, nel pannello “Simbolo” cerchiamo “triangle” sotto le voci rotazione. Selezioniamo poi ad esempio “triangle red” come forma e se necessario modifichiamone le dimensioni.

Clicchiamo poi su “OK” per chiudere tutto.

QGIS avanzato - simbologia tramite regole

Siamo quindi ritornati alla nostra finestra delle proprietà, dove possiamo vedere simbolo, etichetta e regola appena inserite. Per applicare la regola e la simbologia, clicchiamo su “Applica” e poi su “Ok” per chiudere il pannello. Possiamo vedere come la simbologia e il filtro sono stati applicati correttamente.

QGIS avanzato - simbologia tramite regole

Anche nella mappa sono state applicate tutte le nostre modifiche. Possiamo anche raffinare una regola già creata. Pensiamo ad esempio di voler filtrare non solo i siti per tipologia, ma anche per dimensione, utilizzando il campo “area_ha” presente nello stesso layer.

Stavolta utilizzeremo il pannello di stile layer a destra della nostra interfaccia. Per iniziare, clicchiamo due volte sulla regola appena creata.

QGIS avanzato - simbologia tramite regole

Questo ci riporta al pannello visto in precedenza. Clicchiamo nuovamente sul pulsante della sommatoria a sinistra di “prova” per modificare la regola.

QGIS avanzato - simbologia tramite regole

Questo ci riporta direttamente all’editor visto in precedenza. Apriamo la scheda “Campi e valori” e selezioniamo “area_ha” per vedere i valori che abbiamo a disposizione. Ipotizziamo di voler selezionare solamente i siti più grandi di 4 ettari.

Clicchiamo intanto due volte su “area_ha” per aggiungerlo all’editor.

QGIS avanzato - simbologia tramite regole

Possiamo poi scrivere a mano il resto della regola, aggiungendo, come detto prima “> 4”. Come possiamo vedere, QGIS ci informa che l’espressione che abbiamo inserito non è valida. Su “maggiori info” avremo più dettagli, ma quello che manca è essenzialmente un operatore che dica a QGIS: “seleziona questo E quello”. Apriamo quindi la lista degli operatori.

QGIS avanzato - simbologia tramite regole

L’operatore che stiamo cercando è AND. La descrizione dell’operatore ci fa capire che è quello che stiamo cercando, in quanto restituisce TRUE, se le due condizioni sono vere.

Aggiungiamo quindi AND tra ‘tell’ e “area_ha”.

QGIS avanzato - simbologia tramite regole

Possiamo vedere che l’errore relativo all’espressione è scomparso. Per concludere, clicchiamo su OK.

QGIS avanzato - simbologia tramite regole

La regola viene applicata in automatico, ma per provare che vada tutto bene, clicchiamo su “Prova”. QGIS ci conferma di aver trovato sette siti di tipo “tell” e con area maggiore di 4 ettari.

QGIS avanzato - simbologia tramite regole

Se selezioniamo un sito sulla mappa e apriamo la tabella attributi, possiamo avere un’ulteriore conferma di ciò. Vediamo infatti come il sito selezionato corrisponda ad entrambe le condizioni che abbiamo impostato in precedenza.

QGIS avanzato - simbologia tramite regole

La simbologia tramite regole è quindi ottima per visualizzare un numero molto alto di condizioni e personalizzare la visualizzazione di un layer con molti campi.

Se apriamo il layer “btr_sue_all” possiamo vedere le differenti regole applicate per ottenere la visualizzazione per periodo.

Un altro elemento interessante è infine la possibilità di spuntare le caselle per nascondere o mostrare i risultati delle singole regole. Questo rende la visualizzazione ancora più flessibile ed è utilissimo nella progettazione di, ad es., mappe di fase archeologiche.